function ListNode(x){
    this.val = x;
    this.next = null;
}
function Merge(pHead1, pHead2)
{
    // write code here
    // 创建一个新的节点
    var head = new ListNode(0)
    // 让cur指向head
    var cur = head
    if(pHead1 === null) return pHead2
    if(pHead2 === null) return pHead1
    // 如果都不为空则需要进行计算
    while(pHead1 && pHead2){
        // 找到较小的那一个值
        if(pHead1.val <= pHead2.val){
            // 让cur 指向 较小的值
            cur.next = pHead1
            // 让较小的值向后移一位
            pHead1 = pHead1.next
        }else {
            cur.next = pHead2
            pHead2 = pHead2.next
        }
        // 让cur 向后移一位
        cur = cur.next
    }
    // 有一个为空 或者两个为空退出 此时的cur.next 指向有值的
    cur.next = pHead1 ? pHead1 : pHead2
    // 最后返回head.next
    return head.next
}
module.exports = {
    Merge : Merge
};